package com.jic.product.entity.order;

import com.jic.common.base.vo.AdminOperate;
import lombok.Getter;
import lombok.Setter;

import java.io.Serializable;
import java.math.BigDecimal;
import java.util.Date;

/**
 * 订单主表
 *
 * @author :
 * @version : v1.0.0
 * @email :
 * @since : 2020-02-08 12:51:43
 */
@Getter
@Setter
public class Order implements Serializable {

	private static final long serialVersionUID = 1L;

	private AdminOperate adminOperate;

	// 主键ID
	private long id;
	// 请求流水号
	private String serialNo;
	// 订单父编号
	private String parentOrderNo;
	// 订单编号
	private String orderNo;
	// 订单状态，1.待支付 2.已支付3.待发货4.已发货5.确认收货6.待评价7.已关闭8.付款处理中9.已退款10.已完成
	private Integer orderStatus;
	// 0 代表普通下单 1代表代客下单
	private Integer orderType;
	// 冗余-销售渠道
	private Integer saleChannel;
	// 订单标签，VIP、紧急、特别、关注、搁置
	private Integer orderTag;

	// 商户名称
	private String deptName;
	// 店铺ID
	private long storeId;
	// 店铺名称
	private String storeName;
	// 店铺logo
	private String storeLogoUrl;
	// 下单时间
	private Date buyTime;
	// 购买人
	private long buyerId;
	// 购买人用户名
	private String buyerUsername;
	// 购买人真实名称
	private String buyerRealname;
	// 销售总金额
	private BigDecimal saleTotalAmount;
	// 优惠总金额，优惠金额=销售总金额-购买总金额
	private BigDecimal discountTotalAmount;
	// 购买总金额，购买总金额=销售总金额-优惠总金额
	private BigDecimal buyTotalAmount;
	// 物流总费
	private BigDecimal expressTotalFee;
	// 实付总金额，实付总金额=购买总金额+物流费
	private BigDecimal actualPayTotalAmount;
	// 备注
	private String mark;
	// 版本号
	private long version;
	// 创建人
	private long creator;
	// 创建人名字
	private String createName;
	// 创建时间
	private Date createTime;
	// 修改人
	private long updater;
	// 修改人名字
	private String updateName;
	// 修改时间
	private Date updateTime;
	// 1标识已删除，0标识未删除
	private Integer isDelete;
	// 运营方ID
	private long deptId;

	// 团购ID
	private String groupId;
	// 活动ID
	private String promotionId;
	// 活动类型 类型:1单一促销,2满量促销,3满额促销,4秒杀,5赠送类促销,6组合促销7.单品X件优惠,8换购,9预售,11优惠券'
	private String promotionType;
}
